// Game.h //
#ifndef GAME_H
#define GAME_H

#include "SDL.h"

#include "Timer.h"
#include "Starfield.h"


enum GameState
{
	STATE_MENU,
	STATE_PLAYING,
	STATE_PAUSED,
	STATE_GAMEOVER,
	STATE_VICTORY
};

class Game
{
	public:
		Game();
		~Game();
		void OnExecute();
		void OnStart();
		void OnEnd();
		
		void CheckEvents();
		void OnUpdate();
		void OnRender();
		
	private:
		void DrawHUD();
		void DrawTitle();
		void DrawPaused();
		void DrawGameOver();
		void DrawVictory();
		void DrawDebug();
		
		SDL_Surface* screen;
		SDL_Event event;
		float newDivisor;
		bool done;
		int frame;
		int gamestate;
		bool singlePlayer;
		bool showDebug;
		
		Timer timer;
		
		Starfield starfield;
};

#endif
